* ]|
*/
+#define SUPPORTED_GTK_SHELL_VERSION 1
+
static void _gdk_wayland_display_load_cursor_theme (GdkWaylandDisplay *wayland_display);
G_DEFINE_TYPE (GdkWaylandDisplay, gdk_wayland_display, GDK_TYPE_DISPLAY)
}
else if (strcmp (interface, "gtk_shell") == 0)
{
- display_wayland->gtk_shell =
- wl_registry_bind (display_wayland->wl_registry, id, >k_shell_interface, 1);
- _gdk_wayland_screen_set_has_gtk_shell (display_wayland->screen);
+ if (version == SUPPORTED_GTK_SHELL_VERSION)
+ {
+ display_wayland->gtk_shell =
+ wl_registry_bind(display_wayland->wl_registry, id,
+ >k_shell_interface, SUPPORTED_GTK_SHELL_VERSION);
+ _gdk_wayland_screen_set_has_gtk_shell (display_wayland->screen);
+ }
}
else if (strcmp (interface, "wl_output") == 0)
{
<protocol name="gtk">
<interface name="gtk_shell" version="1">
+ <description summary="gtk specific extensions">
+ gtk_shell is a protocol extension providing additional features for
+ clients implementing it. It is not backward compatible, and a client must
+ always only bind to the specific version it implements. If a client binds
+ to a version different from the version the server provides, an error will
+ be raised.
+ </description>
+
<enum name="capability">
<entry name="global_app_menu" value="1"/>
<entry name="global_menu_bar" value="2"/>
<entry name="desktop_icons" value="3"/>
</enum>
-
+
<event name="capabilities">
<arg name="capabilities" type="uint"/>
</event>